Índice · Inteligencia Artificial

Inteligencia Artificial

Clase 6 · Metaheurísticas y satisfacción de restricciones

Fecha: 5 de septiembre de 2026

Resumen de la clase

1 Contenido de la clase

Repaso: búsqueda en espacios de estados y problemas de restricciones [04:48-07:53]

En los problemas de camino la pregunta es "¿cómo llego del estado inicial al estado final?" y los caminos y costos tienen unicidad. En un CSP la meta es un estado (una asignación completa que cumple las restricciones), no un camino: en Sudoku "no hay camino", solo importa llenar las 81 casillas con las reglas. Un CSP se define con variables X, dominio D (valores posibles) y restricciones C. En el coloreado de mapas, países adyacentes no pueden compartir color, p. ej. "el color de Portugal es diferente al color de España" [06:27-07:53].

Las N-reinas [26:55-29:47]

Problema clásico: colocar N reinas en un tablero N×N sin que se ataquen (misma fila, columna o diagonal). Se prefieren 8 variables Q1...Q8 (una por fila) en lugar de 64 variables binarias. Se distingue modelar el problema (variables y restricciones) de diseñar el algoritmo que lo resuelve [40:45-41:47].

Tipos de restricciones y aplicaciones reales [43:33-46:29]

Restricciones fuertes (hard, deben cumplirse) y suaves (preferencias que representan costos); el curso se enfoca en las fuertes. Variables discretas y continuas (programación lineal); aquí se trabajan discretas. Aplicaciones: calendarios de vuelos y tripulaciones de aerolíneas, distribución y transporte, calendarios deportivos (NBA), planificación de fábricas, asignación de aeronaves y la compensación multilateral de deudas entre bancos en México (un grafo con pesos y muchos nodos).

Backtracking [46:45-49:35]

Componentes de un CSP: estado inicial, función de transición/sucesor, prueba de meta (solución completa) y restricciones. El algoritmo asigna una variable a la vez (las variables son conmutativas) en un orden fijo, revisa restricciones en cada paso y solo prueba valores sin conflicto con asignaciones previas; es una búsqueda en profundidad con poda y, si no hay asignación posible, regresa (backtrack). Con él se resuelve N-reinas hasta N≈25: "nunca vamos a hacer todas las permutaciones". Mejoras: orden de asignación de variables y orden de valores.

Forward checking y MAC [60:28-69:58]

Forward checking (revisión hacia adelante): al asignar una variable se eliminan de los dominios de los vecinos los valores incompatibles (propagación de restricciones / consistencia de arcos). Si una variable queda con un único valor, se propaga a sus vecinos. Si un dominio se vacía, esa rama falla. MAC combina la búsqueda en profundidad con un ciclo de consistencia de arcos [67:24-69:58].

Heurísticas de ordenamiento y pseudocódigo [80:00-82:02]

MRV (valor mínimo restante): elegir la variable más restringida, con menos valores disponibles. LCV (valor menos limitante): elegir el valor que menos restricciones imponga a las demás. El backtracking recursivo: si todas las variables están asignadas, devolver la asignación; si no, seleccionar una variable no asignada y probar cada valor consistente, desasignando si la rama falla. En el cierre se mencionaron librerías y software de CSP [82:06-82:35], pero el tramo es muy ruidoso [parte no entendida].

Metaheurísticas: búsqueda local y hill climbing [Conferencia IA 6]

La búsqueda local parte de asignaciones completas y las mueve con movimientos locales: es más rápida y eficiente en memoria, pero incompleta y subóptima. En problemas de satisfacción se parte de una configuración no factible hacia una factible; en optimización, de soluciones subóptimas hacia la óptima. Hill climbing: iniciar en cualquier estado y moverse siempre al mejor vecino; si no hay mejor vecino, terminar.

Búsqueda tabú [Conferencia IA 6]

Es un hill climber con memoria: mantiene una lista tabú τ de asignaciones ya visitadas. Algoritmo: 1) dada una asignación s, generar una n que no esté en la lista; 2) elegir el mejor vecino n que no esté en la lista y hacer s←n; 3) añadir n a τ. Se regresa la mejor solución vista.

Recocido simulado [Conferencia IA 6]

Escapa de óptimos locales aceptando a veces movimientos peores. Algoritmo: 1) iniciar en un estado s con temperatura t alta; 2) seleccionar una asignación n del vecindario; 3) si f(n) > f(s), aceptar s←n; 4) si no, aceptar s←n con probabilidad e^((f(n)−f(s))/t); 5) actualizar la temperatura t ← α·t. Temperatura alta → búsqueda casi aleatoria; temperatura baja → se comporta como hill climber. Con tiempo infinito puede demostrarse su optimalidad.

tk+1 = α · tk  ·  P(aceptar peor) = e((f(n)−f(s))/t) [Conferencia IA 6]

Algoritmos evolutivos [Conferencia IA 6]

Inspirados en la evolución natural y la supervivencia del más apto. Elementos: codificar las estructuras a replicar, operaciones (cruza y mutación), función de aptitud y mecanismo de selección. Tipos: estrategias evolutivas, programación evolutiva y algoritmos genéticos. Algoritmo básico: población inicial aleatoria, calcular aptitud, seleccionar probabilísticamente por aptitud (p. ej. selección por torneo), aplicar cruza y mutación, y ciclar hasta la condición. En la representación binaria la cadena completa es el cromosoma, cada subcadena por variable es un gen y cada valor es un alelo. La cruza de un punto corta a los padres en una posición aleatoria e intercambia las colas (existen cruzas de 2, 3... n puntos). La mutación cambia cada alelo con probabilidad P_m, normalmente muy baja.

Pm = 1 / L  (L = tamaño del cromosoma) [Conferencia IA 6]

Notas generales y no free lunch [Conferencia IA 6]

Problemas discretos/combinatorios → preferir búsqueda tabú y recocido simulado; problemas continuos o mixtosalgoritmos evolutivos suelen dar buenos resultados. Los evolutivos también se usan para generar software (programación genética), aprendizaje automático evolutivo y redes neuronales (neuroevolución). El teorema del no free lunch afirma que ningún algoritmo supera a todos los demás en todos los problemas. El siguiente tema será búsqueda con adversarios.

Complementos y precisiones (búsqueda local)

  • Nota sobre el material: la búsqueda tabú, la selección por torneo y la fórmula Pm = 1/L provienen de la metaheurística clásica y de la conferencia; no aparecen en Russell y Norvig (AIMA).
  • Random-restart hill climbing: repetir hill climbing desde muchos inicios aleatorios; es completo con probabilidad 1 (en 8-reinas encuentra solución en ~7 reinicios, p ≈ 0.14 por intento).
  • Haz local (local beam search): mantiene k estados; en cada paso genera todos los sucesores de los k y conserva los k mejores. Los hilos comparten información (no son reinicios independientes); puede perder diversidad si los k se agrupan.
  • Haz estocástico (stochastic beam search): elige los sucesores con probabilidad proporcional a su valor (aumenta la diversidad).
  • Elitismo y culling: conservar los mejores padres de la generación anterior (elitismo) o descartar a los individuos por debajo de un umbral (culling).
  • Espacios continuos: se usa el gradiente (subida/bajada de gradiente) para elegir la dirección de mejora.
  • Recocido simulado: converge al óptimo si la temperatura baja suficientemente despacio (esquema logarítmico); en la práctica basta un enfriamiento geométrico tk+1 = α·tk.

2 Puntos destacados / Lo que hay que saber

Un CSP se define con variables, dominios y restricciones; la meta es un estado, no un camino [04:48-07:53].
Backtracking: asigna una variable a la vez, búsqueda en profundidad con poda que regresa si no hay asignación posible [46:45-49:35].
Forward checking: al asignar una variable se eliminan de los dominios de los vecinos los valores incompatibles (consistencia de arcos) [60:28-63:20].
MAC = búsqueda en profundidad + ciclo de consistencia de arcos [67:24-69:58].
Heurísticas de ordenamiento: MRV (variable más restringida) y LCV (valor que menos limita a las demás) [80:00-80:28].
La búsqueda local es más rápida y eficiente en memoria, pero incompleta y subóptima [Conferencia IA 6].
Búsqueda tabú = hill climber con lista de estados visitados τ; recocido simulado acepta movimientos peores con probabilidad e^((f(n)−f(s))/t) [Conferencia IA 6].
Algoritmos evolutivos: población, aptitud, selección, cruza y mutación; cromosoma/gen/alelo; P_m = 1/L [Conferencia IA 6].
No free lunch theorem: ningún algoritmo domina en todos los problemas [Conferencia IA 6].
Random-restart, haz local (beam) y haz estocástico complementan a hill climbing (completitud probabilística y diversidad).
Tabú, selección por torneo y Pm = 1/L no están en Russell y Norvig (AIMA): son material extra de la conferencia.

3 Actividades y tareas pendientes

No se indicaron en esta clase tareas con fecha de entrega.

El inicio de la clase incluyó comentarios sobre la Tarea 1 [00:00-04:00], aunque el tramo es muy ruidoso [parte no entendida].

4 Dudas que podrían examinar

¿Por qué no conviene modelar las N-reinas con 64 variables binarias?

Porque usar 8 variables (una por fila) con restricciones de columnas y diagonales es un modelo mucho más compacto y eficiente [26:55-29:47].

¿Cuál es la diferencia entre una restricción fuerte y una suave?

La fuerte debe cumplirse siempre; la suave es una preferencia que representa un costo. El curso se enfoca en las fuertes [43:33-46:29].

¿Cuándo conviene backtracking y cuándo forward checking/MAC?

Forward checking y MAC propagan las restricciones para podar antes; MAC además mantiene la consistencia de arcos en cada paso [60:28-69:58].

¿Por qué el recocido simulado acepta movimientos que empeoran la solución?

Para escapar de óptimos locales; con temperatura alta acepta casi cualquier movimiento y al enfriar se comporta como hill climber [Conferencia IA 6].

¿Qué algoritmo usar según el problema?

Discretos/combinatorios: búsqueda tabú o recocido simulado; continuos o mixtos: algoritmos evolutivos [Conferencia IA 6].

5 Sitios o recursos para visitar

Inteligencia Artificial: Un enfoque moderno (Russell y Norvig)
Libro de referencia clásico de IA, incluye CSP y metaheurísticas. · google.com
Problema de las N-reinas
Problema clásico usado en clase para CSP y backtracking. · google.com
Algoritmos genéticos
Para profundizar en cruza, mutación y selección por torneo. · google.com
Recocido simulado (simulated annealing)
Metaheurística de enfriamiento con probabilidad de aceptación. · google.com
Búsqueda tabú
Hill climber con lista de estados visitados. · google.com
No free lunch theorem
Teorema presentado al final de la conferencia. · google.com

6 Glosario de términos

  • CSP: problema definido por variables, dominios y restricciones cuya solución es una asignación completa que las cumple.
  • Backtracking: búsqueda en profundidad con poda que asigna una variable a la vez y regresa cuando no hay asignación válida.
  • Forward checking: técnica que al asignar una variable elimina de los dominios de los vecinos los valores incompatibles.
  • MAC: mantener consistencia de arcos durante la búsqueda en profundidad.
  • MRV: heurística que elige la variable con menos valores disponibles.
  • LCV: heurística que elige el valor que menos restricciones impone a las demás variables.
  • Hill climbing: búsqueda local que siempre se mueve al mejor vecino y se detiene si no hay mejora.
  • Búsqueda tabú: hill climber con lista de estados ya visitados para evitar ciclos.
  • Recocido simulado: metaheurística que acepta movimientos peores con cierta probabilidad según una temperatura que se enfría.
  • Algoritmo evolutivo: método inspirado en la evolución natural que usa población, aptitud, selección, cruza y mutación.
  • Cromosoma / gen / alelo: en representación binaria, la cadena completa, cada subcadena por variable y cada valor, respectivamente.
  • No free lunch theorem: teorema que afirma que ningún algoritmo de búsqueda supera a todos los demás en todos los problemas.
  • Random-restart hill climbing: repetir hill climbing desde muchos inicios aleatorios; completo con probabilidad 1.
  • Haz local (local beam search): mantiene k estados y sus mejores sucesores, compartiendo información entre hilos.
  • Haz estocástico (stochastic beam search): como el haz local pero eligiendo por probabilidad proporcional al valor.
  • Elitismo: conservar los mejores individuos de la generación anterior para que la aptitud no empeore.

7 Mapa mental textual

  • Inteligencia Artificial · Clase 6
    • Problemas de satisfacción de restricciones (CSP)
      • Variables, dominios, restricciones
      • Ejemplos: Sudoku, coloreado de mapas, N-reinas
      • Restricciones fuertes vs suaves; variables discretas vs continuas
      • Aplicaciones: aerolíneas, transporte, deportes, fábricas, banca
      • Algoritmos de solución
        • Backtracking (búsqueda en profundidad con poda)
        • Forward checking (propagación de dominios)
        • MAC (consistencia de arcos + búsqueda en profundidad)
        • Heurísticas MRV y LCV
    • Metaheurísticas (búsqueda local)
      • Hill climbing
      • Búsqueda tabú (lista τ de visitados)
      • Recocido simulado (temperatura y probabilidad)
      • Algoritmos evolutivos
        • Población, aptitud, selección por torneo
        • Cruza y mutación (cromosoma, gen, alelo)
        • Tipos: estrategias evolutivas, programación evolutiva, algoritmos genéticos
      • Elección según el problema (discreto/continuo)
      • No free lunch theorem
    • Siguiente tema: búsqueda con adversarios

Notas de estudio